Skip to content

dgb(phase-b): pool-attempts-per-second SSOT + conformance KAT - #407

Merged
frstrtr merged 1 commit into
masterfrom
dgb/pool-aps-ssot
Jun 24, 2026
Merged

dgb(phase-b): pool-attempts-per-second SSOT + conformance KAT#407
frstrtr merged 1 commit into
masterfrom
dgb/pool-aps-ssot

Conversation

@frstrtr

@frstrtr frstrtr commented Jun 24, 2026

Copy link
Copy Markdown
Owner

FENCED Phase-B share/pool conformance slice (one pillar).

What: Lift the pure arithmetic core of ShareTracker::get_pool_attempts_per_second (share_tracker.hpp:1306) into header-only src/impl/dgb/coin/pool_attempts_per_second.hpp:

attempts_per_second = attempts / max(1, near_ts - far_ts)

with the dist>=2 + near-in-chain + far-resolved guards and the integer divide.

Oracle: pinned non-circularly vs p2pool-dgb-scrypt data.py get_pool_attempts_per_second (attempts // time, time<=0 -> 1, integer path). All KAT expecteds are hand-derived from the oracle expression, not produced by the helper under test.

Scope / fence: dgb-tree-local, additive. share_tracker.hpp is NOT rewired — the byte-identity delegation is the follow-on; the lifted body is a verbatim copy of the inline (same int32_t span, same uint288 divide) so that follow-on is provably value-identical. The chain walk (get_nth_parent_hash / get_delta) stays in ShareTracker.

Test: dgb_pool_attempts_per_second_test — 10/10 green locally. Registered in the dir CMakeLists allowlist and both build.yml --target arms (#143 NOT_BUILT trap).

Consensus-neutral pure arithmetic. No self-merge.

@frstrtr
frstrtr force-pushed the dgb/pool-aps-ssot branch from 7748a3b to ea29058 Compare June 24, 2026 06:37
Lift the pure arithmetic core of ShareTracker::get_pool_attempts_per_second
into header-only coin/pool_attempts_per_second.hpp:

  attempts_per_second = attempts / max(1, near_ts - far_ts)

with the dist>=2 + near-in-chain + far-resolved guards and the integer
divide. Pinned non-circularly against the p2pool-dgb-scrypt data.py oracle
get_pool_attempts_per_second (attempts // time, time<=0 -> 1, integer path).

FENCED, dgb-tree-local, additive. share_tracker.hpp NOT rewired -- the
byte-identity delegation is the follow-on; the lifted body is a verbatim
copy of the inline (same int32_t span, same uint288 divide) so that
follow-on is provably value-identical. The chain walk (get_nth_parent_hash
/ get_delta) stays in ShareTracker. Test registered in the dir CMakeLists
allowlist and both build.yml --target arms (#143 NOT_BUILT trap). 10/10
green; consensus-neutral pure arithmetic.
@frstrtr
frstrtr force-pushed the dgb/pool-aps-ssot branch from ea29058 to 824f2d7 Compare June 24, 2026 09:37
@frstrtr
frstrtr merged commit 04052e3 into master Jun 24, 2026
32 checks passed
frstrtr added a commit that referenced this pull request Jun 25, 2026
dgb: rewire get_pool_attempts_per_second onto coin/ SSOT (#407 follow-on)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant